import axios from "axios";

const api = axios.create({
  baseURL: "/api", // 使用相对路径，让 Vite 代理处理
  timeout: 10000,
});

// 请求拦截器
api.interceptors.request.use(
  (config) => {
    console.log("发送请求:", config.url);
    return config;
  },
  (error) => {
    return Promise.reject(error);
  }
);

// 响应拦截器
api.interceptors.response.use(
  (response) => {
    console.log("收到响应:", response.data);
    return response;
  },
  (error) => {
    console.error("请求错误:", error);
    return Promise.reject(error);
  }
);

// 获取问卷列表
export function getSurveyList() {
  return api.get("/survey/list");
}

// 获取问卷题目列表
export function getSurveyQuestions(surveyId) {
  return api.get(`/question/survey/${surveyId}`);
}

// 提交答案
export function submitAnswer(data) {
  return api.post("/answer/submit", data);
}

// 获取员工列表
export function getEmployeeList() {
  return api.get("/employee/list");
}

// 获取员工详情
export function getEmployeeDetail(id) {
  return api.get(`/employee/${id}`);
}

// 满意度分析接口
/**
 * 获取满意度分析详情（GET）
 * @param {Object} options
 * @param {number|string} options.surveyId - 问卷ID
 * @param {Object} options.params - 查询参数（granularity, analysisType, subGroup, scoreRange）
 * @returns {Promise}
 */
export function getSatisfactionAnalysis({ surveyId, params }) {
  return api.get(`/analysis/satisfaction/${surveyId}/detail`, { params });
}

// 敬业度分析接口
/**
 * 获取敬业度分析详情（GET）
 * @param {Object} options
 * @param {number|string} options.surveyId - 问卷ID
 * @param {Object} options.params - 查询参数（granularity, analysisType, subGroup, scoreRange）
 * @returns {Promise}
 */
export function getEngagementAnalysis({ surveyId, params }) {
  return api.get(`/analysis/engagement/${surveyId}/detail`, { params });
}

//获取试卷作答情况

export function getSurveyStatistics() {
  return api.get(`/survey/1/statistics`);
}

export default api;
